using UnityEngine;

/// <summary>
/// Save and load data from persistent storage. This storage keeps data even if your ship was destroyed, or after program recompile
/// </summary>
public interface IMemory {
	public string  GetString(string key, string defaultValue = null);
	public void    SetString(string key, string value);
	public int     GetInt(string key, int defaultValue = default);
	public void    SetInt(string key, int value);
	public bool    GetBool(string key, bool defaultValue = default);
	public void    SetBool(string key, bool value);
	public float   GetFloat(string key, float defaultValue = default);
	public void    SetFloat(string key, float value);
	public Vector3 GetVector3 (string key, Vector3 defaultValue = default);
	public void    SetVector3(string key, Vector3 value);
	/// <summary>
	/// Clear all data in storage
	/// </summary>
	public void    ClearAll();
}
